<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

require_once '../db/Conexion.php';

//gestiona la accion solicitada 
function accion_controller() {
    $accion = FALSE;
    $pokerT_peticion = helper_data();
    $accion = $pokerT_peticion['accion'];
    if ($accion) {
        switch ($accion) {
            case 'save' :
                guardar($pokerT_peticion);
                break;
            case 'delete' :
                eliminar($pokerT_peticion['id']);
                break;
            case 'list' :
                listar();
                break;
            case 'edit' :
                editar($pokerT_peticion['id']);
                break;
            case 'options' :
                opciones($pokerT_peticion['id'], $pokerT_peticion['opcionConfig']);
                break;
        }
    } else {
        die("ERROR: No se recibieron los parametros correspondientes.");
    }
}

//OBTIENE LOS DATOS DE POST
function helper_data() {
    $pokerTorneo = array();

    if (isset($_POST['id']))
        $pokerTorneo['id'] = $_POST['id'];
    if (isset($_POST['opcionConfig']))
        $pokerTorneo['opcionConfig'] = $_POST['opcionConfig'];
    if (isset($_POST['moneda_id']))
        $pokerTorneo['moneda_id'] = $_POST['moneda_id'];
    if (isset($_POST['nombre']))
        $pokerTorneo['nombre'] = strtoupper($_POST['nombre']);
    if (isset($_POST['descripcion']))
        $pokerTorneo['descripcion'] = $_POST['descripcion'];
    if (isset($_POST['poker_estructura_id']))
        $pokerTorneo['poker_estructura_id'] = $_POST['poker_estructura_id'];
    if (isset($_POST['limite_recompras']))
        $pokerTorneo['limite_recompras'] = $_POST['limite_recompras'];
    if (isset($_POST['fecha']))
        $pokerTorneo['fecha'] = $_POST['fecha'];
    if (isset($_POST['bounty']))
        $pokerTorneo['bounty'] = $_POST['bounty'];
    if (isset($_POST['monto_aporte_casa']))
        $pokerTorneo['monto_aporte_casa'] = strtoupper($_POST['monto_aporte_casa']);
    if (isset($_POST['cantidad_mesas']))
        $pokerTorneo['cantidad_mesas'] = strtoupper($_POST['cantidad_mesas']);
    if (isset($_POST['jugadores_x_mesa']))
        $pokerTorneo['jugadores_x_mesa'] = strtoupper($_POST['jugadores_x_mesa']);
    if (isset($_POST['poker_clock']))
        $pokerTorneo['poker_clock'] = strtoupper($_POST['poker_clock']);
    if (isset($_POST['accion']))
        $pokerTorneo['accion'] = $_POST['accion'];
    $pokerTorneo['habilitar_inscripciones'] = 0;
    if (isset($_POST['habilitar_inscripciones']))
        $pokerTorneo['habilitar_inscripciones'] = 1;
    $pokerTorneo['habilitar_juego'] = 0;
    if (isset($_POST['habilitar_juego']))
        $pokerTorneo['habilitar_juego'] = 1;
    return $pokerTorneo;
}

//GUARDAR
function guardar($pokerT_peticion) {
    if (!$pokerT_peticion['id']) {
        $query = "INSERT INTO poker_torneos (moneda_id, nombre, descripcion, poker_estructura_id, limite_recompras, fecha ,
            bounty,monto_aporte_casa,cantidad_mesas,poker_clock,jugadores_x_mesa,habilitar_inscripciones,habilitar_juego) VALUES
                        (   '" . $pokerT_peticion['moneda_id'] . "',
                            '" . $pokerT_peticion['nombre'] . "',
                            '" . $pokerT_peticion['descripcion'] . "',
                            '" . $pokerT_peticion['poker_estructura_id'] . "',
                            '" . $pokerT_peticion['limite_recompras'] . "',
                            '" . $pokerT_peticion['fecha'] . "',
                            '" . $pokerT_peticion['bounty'] . "',
                            '" . $pokerT_peticion['monto_aporte_casa'] . "', 
                            '" . $pokerT_peticion['cantidad_mesas'] . "',     
                            '" . $pokerT_peticion['poker_clock'] . "',     
                            '" . $pokerT_peticion['jugadores_x_mesa'] . "',     
                             " . $pokerT_peticion['habilitar_inscripciones'] . ",
                             " . $pokerT_peticion['habilitar_juego'] . " );";
    } else {
        $query = "UPDATE poker_torneos 
                    SET moneda_id='" . $pokerT_peticion['moneda_id'] . "',
                        nombre='" . $pokerT_peticion['nombre'] . "',
                        descripcion='" . $pokerT_peticion['descripcion'] . "',
                        poker_estructura_id='" . $pokerT_peticion['poker_estructura_id'] . "',
                        limite_recompras='" . $pokerT_peticion['limite_recompras'] . "',
                        fecha='" . $pokerT_peticion['fecha'] . "', 
                        bounty='" . $pokerT_peticion['bounty'] . "',
                        monto_aporte_casa='" . $pokerT_peticion['monto_aporte_casa'] . "',
                        cantidad_mesas='" . $pokerT_peticion['cantidad_mesas'] . "',
                        poker_clock='" . $pokerT_peticion['poker_clock'] . "',
                        jugadores_x_mesa='" . $pokerT_peticion['jugadores_x_mesa'] . "',
                        habilitar_inscripciones=" . $pokerT_peticion['habilitar_inscripciones'] . ",
                        habilitar_juego=" . $pokerT_peticion['habilitar_juego'] . "    
                    WHERE id=" . $pokerT_peticion['id'] . " LIMIT 1;";
    }
    $tid = ejecutar($query);
    if ($tid) {
        if (!$pokerT_peticion['id']) {
            $query = "INSERT INTO poker_eventos (poker_torneo_id,nombre, habilita_concurso) VALUES ($tid,'INGRESO AL TORNEO',1)";
            ejecutar($query);
        }

        listar();
    } else {
        die("Error: No se pudo Guardar el Registro!");
    }
}

//ELIMINAR
function eliminar($id) {
    $query = "DELETE FROM poker_torneos WHERE id=" . $id . " LIMIT 1;";
    if (ejecutar($query)) {
        listar();
    } else {
        echo "Error: No se puede Eliminar este registro";
    }
}

//LISTADO
function listar() {

    $monedas = consultar("Select * from monedas as m ");
    $estructuras = consultar("SELECT * FROM poker_estructuras");
    $pokerTorneos = consultar("Select p.id,p.nombre, p.fecha, p.pozo_acumulado, p.total_puntos, m.nombre_corto as moneda
        from poker_torneos as p 
        LEFT JOIN monedas as m on p.moneda_id=m.id
         ");
    require_once '../view/pokerTorneo/ListPokerTorneos.php';
}

//EDITAR
function editar($id) {

    $query = "Select * from poker_torneos where id=" . $id;
    $pokerTorneo = consultar($query);
    $monedas = consultar("Select * from monedas as m ");
    $estructuras = consultar("SELECT * FROM poker_estructuras");
    require_once '../view/pokerTorneo/FormPokerTorneo.php';
}

//opciones de configuracion, hace la selecion de carga
function opciones($id, $opciones) {

    $query = "Select * from poker_torneos where id=" . $id;
    $pokerTorneo = consultar($query);
    switch ($opciones) {
        case 1:
            $torneo_id = $id;
            $pokerEstructuras = consultar("Select e.id, e.poker_estructura_id, e.nivel, e.ante, e.small_blind, e.big_blind, e.duracion, e.break, pe.nombre from poker_estructura_detalles as e 
                LEFT JOIN poker_estructuras pe on pe.id= e.poker_estructura_id
                LEFT JOIN poker_torneos pt on pt.poker_estructura_id = pe.id
                where  pt.id= " . $id);
            $estructura_id = $pokerEstructuras[0]['poker_estructura_id'];
            require_once '../view/pokerEstructura/ListPokerEstructuraDetalles.php';
            break;
        case 2:
            $torneo_id = $id;
            $pokerPayOuts = consultar("Select * from poker_pay_out as e where e.poker_torneo_id= " . $id);
            require_once '../view/pokerPayOut/ListPokerPayOuts.php';
            break;
        case 3:
            $torneo_id = $id;
            $pokerAsignaciones = consultar("Select * from poker_asignaciones as e where e.poker_torneo_id= " . $id);
            require_once '../view/pokerAsignacion/ListPokerAsignaciones.php';
            break;

        default:
            break;
    }
}

accion_controller();
